#pragma once

#include <memory>

#include "../Network/RBM.h"

using namespace std;

class CRBMLearn
{
public:
	CRBMLearn() = delete;
	
	CRBMLearn(const shared_ptr<RBM> & spRBM);

public:
	void Trainning(const Matrix2 & vData, double learnRate, int min_batch);

protected:
	double PHI(double x);

protected:
	shared_ptr<RBM> m_spRBM;
};